Windows Terminal (Preview) が出たのでキーバインドや配色をカスタマイズしてみた
こんにちは植木和樹@上越オフィスです。2月14日にWindows Terminalの機能確定版がリリースされたので試してみました。
インストール
今回はchocolateyを使ってインストールしました。あとから配色も設定したいためcolortoolもインストールしておきます。
% choco install microsoft-windows-terminal -y % choco install colortool -y
実行環境
- Windows10 バージョン1903 18362.657
- Windows Terminal (Preview) Version 0.9.433.0
- chocolatery v0.10.15
コンフィグをVS Codeで行う
拡張子jsonのデフォルトアプリケーションをVS Codeにすると、Ctrl + ,
した時にVS Codeでコンフィグファイルを編集できます。
拡張子jsonファイルを右クリック → プロパティ → プログラムで変更できます。
VS Codeだとパラメーターや設定できる値の補完ができるので、ぜひ設定しておきましょう。
カスタマイズ
カスタマイズはGitHubにあるドキュメントを参照しながら進めます。
WSLで起動
起動時にWSLのシェルを起動する場合は defaultProfile
にWSLのguidを設定します。
"defaultProfile": "{2c4de342-38b7-51cf-b940-2309a097f518}",
透明度など細かい挙動の変更
WSL環境固有の設定をいれています。
デフォルトのままだとWSLのシェルが終了してもウィンドウが残ったままなので closeOnExit
を always
に変更しました。またフォントやサイズ、ウィンドウ背景の透明度を設定しています。
"guid": "{2c4de342-38b7-51cf-b940-2309a097f518}", "hidden": false, "name": "Ubuntu", "source": "Windows.Terminal.Wsl", "colorScheme": "Japanesque", "acrylicOpacity": 0.85, "useAcrylic": true, "cursorColor": "#FFFFFF", "fontFace": "Cascadia", "fontSize": 14, "closeOnExit":"always"
上で colorScheme
で配色を設定しています。この後に説明します。
配色の設定
配色(カラースキーマ)はデフォルトでいくつか用意されています。が、どれも発色が強めで目が疲れそうだったためiTerm2のJapanesque
を参考に設定しました。
"schemes": [ { "name": "Japanesque", "background": "#0C0C0C", "foreground": "#f9faf6", "black": "#0C0C0C", "blue": "#4c99d3", "green": "#7bb75b", "cyan": "#389aac", "red": "#ce3e60", "yellow": "#e8b32a", "purple": "#a57fc4", "white": "#f9faf6", "brightBlack": "#585a58", "brightBlue": "#135879", "brightGreen": "#767e2b", "brightCyan": "#76bbca", "brightRed": "#d18ea6", "brightYellow": "#77592e", "brightPurple": "#5f4190", "brightWhite": "#b1b5ae" } ],
colortoolsユーティリティを使えば、直接Japanesque.itermcolors
ファイルを読み込んでターミナルの色設定できそうなのですが、ちょっと使い方が分からなかったためコンフィグ内で指定しています。
(colortool -l
で表示されるフォルダにJapanesque.itermcolors
ファイルをコピーしてcolortool -d Japanesque.itermcolors
を実行しても設定が反映されませんでした。)
(追記)colortoolうまくいきました
コマンドプロンプトを管理者モードで起動したところitermcolorsファイルを読み込むことができました。
% cd YOUR_DOWNLOAD_FOLDER % colortool -b Japanesque.itermcolors Wrote selected scheme to the defaults. % colortool -l % colortool -s
読み込んだファイルがschemes directoryにコピーされていればOKです。schems directoryは colortool -l
で確認できます。
キーバインドの設定
新しいタブの作成、ペインの垂直・水平分割にキーを割り当てました。ペイン分割は頻繁に使うのでiTermっぽくしてあります。
"keybindings": [ { "command":"newTab", "keys": ["Ctrl+t"]}, { "command":"splitVertical", "keys": ["Alt+d"]}, { "command":"splitHorizontal", "keys": ["Alt+Shift+d"]} ]
(デフォルトだとAlt + Shiftを押しながらプラスかマイナスです)
他にもデフォルトで下記のような操作にキーが割り当てられています。
操作 | command | keys |
---|---|---|
次のタブへ | nextTab | Ctrl + Tab |
前のタブへ | prevTab | Ctrl + Shift + Tab |
上のペインへ | moveFocusUp | Alt + ↑ |
下のペインへ | moveFocusDown | Alt + ↓ |
左のペインへ | moveFocusLeft | Alt + ← |
右のペインへ | moveFocusRight | Alt + → |
ペインリサイズ | resizePane | Alt + Shift + ↑←↓→ |
まとめ
長年Windowsで作業しててcommand.comの機能の少なさに困っていましたが、Microsoft公式で高機能Terminalを出してくれるのはうれしいですね。公式だと職場環境にも安心してインストールしやすいですし。
今回は見た目を変更して遊んでいただけなので、ターミナルソフト自体の性能については試していません。vim + airlineやfish + gitの環境で文字化けがおきないかなど色々試してみたいと思います。
参考までに現在のprofiles.json
を貼っておきます。